home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64-128Toolkit / GCR_READ.ARC / RD TRK 11 (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  917 b   |  33 lines

  1. 5 ;RD TRK 11
  2. 10 FMT JSR SVREG; ROUTINE TO PLACE HEADER
  3. 20 LDY #$02; IN PROPER ROW AT $7FXX
  4. 30 LDA HEX,Y; THIS IS THE SECTOR IN HEADER
  5. 35 STA ERR; USED IN ST DATA TO PLACE DATA IN NUMERIC SEQUENCE
  6. 36 ;PUT HEADER IN NUMERIC SEQUENCE. EACH HEADER IS 8 BYTES
  7. 40 ASL:ASL:ASL; MULTIPLY BY 8 IF SEC = 3
  8. 50 TAY; THEN A = #24 OR #$18
  9. 60 LDA HDBUF,Y; IF $8118 = 0 ITS A NEW SEC
  10. 70 BEQ WRT; SO ADD IT TO BUFFER
  11. 71 JSR RSTREG
  12. 75 RTS
  13. 76 WRT LDX #$00; WRITE HEADER TO BUFFER
  14. 80 MRE LDA HEX,X
  15. 85 STA HDBUF,Y
  16. 90 INY
  17. 95 INX
  18. 100 CPX #$08
  19. 110 BNE MRE
  20. 111 LDA #$01; SET SEC FLAG SO COUNT WILL
  21. 112 STA SECFLG; BE DECREMENTED BY 1
  22. 113 LDA ERR; EACH READ REQUIRES TWO DATA BUFFERS
  23. 114 ASL; IF SEC = 3 THEN TIMES 2 = 6
  24. 115 CLC
  25. 116 ADC #$10; 10 + 6 = 16 HIGH BYTE OF BUFFER
  26. 117 CMP #$3B; IF SEC > 21 THEN NOT VALID SEC NUMBER
  27. 118 BCS FMT1
  28. 119 STA STD1+2
  29. 128 JSR DT; WRITE BYTES TO BUFFERS
  30. 129 JSR RSTREG; GET ORIGINAL A X & Y
  31. 130 FMT1 RTS
  32. 160 .FILE RD TRK 12
  33.